home *** CD-ROM | disk | FTP | other *** search
/ Language/OS - Multiplatform Resource Library / LANGUAGE OS.iso / cpp_libs / varia / egebook.lha / ege.book / 5 / String.C < prev    next >
C/C++ Source or Header  |  1992-06-05  |  558b  |  30 lines

  1. #include "String.h"
  2.  
  3. const int String::MaxLength = 128;
  4.  
  5. ostream& operator<<(ostream& o, String& s) {
  6.   o << s.str;
  7.   return o;
  8. }
  9.  
  10. istream& operator>>(istream& i, String& s) {
  11.   delete [] s.str;
  12.   char tmp[String::MaxLength];
  13.   i >> tmp;
  14.   s.str = new char [strlen(tmp)+1];
  15.   strcpy(s.str, tmp);
  16.   return i;
  17. }
  18.  
  19. bool String::contains(String s) {
  20.   for (int i=0; i<strlen(str); i++)
  21.     if (str[i] == s.str[0]) {
  22.       for (int j=1; j<strlen(s.str); j++)
  23.     if (str[i+j] != s.str[j])
  24.       break;
  25.       if (j == strlen(s.str))
  26.     return TRUE;
  27.     }
  28.   return FALSE;
  29. }
  30.